java时间和第二期显示1:10,而不是13:10
嗨,我有一节课要上:
public static final String DATE_DDMMMMYYHHMM_PATTERN = "dd MMMM yyyy, hh:mm";
public static String formatDate(Date date , String pattern) {
SimpleDateFormat sdf = new SimpleDateFormat(pattern);
String formatDate = "";
if(date != null) {
formatDate = sdf.format(date);
}
return formatDate;
}
我的单元测试如下所示:
@Test
public void testDateFormat(){
DateTime dateTime = new DateTime(2013, 11, 01, 13, 10, 00, 00);
Date date = dateTime.toDate();
Assert.assertEquals("01 November 2013, 13:10", Main.formatDate(date,Main.DATE_DDMMMMYYHHMM_PATTERN));
}
虽然在我的测试中,我将时间和秒定义为13:10,但它显示为2013年11月1日,01:10。请问我能做些什么,以便时间和秒可以显示为13:10
提前感谢您的帮助
# 1 楼答案
将小时格式从
hh
更改为HH
根据docs:
# 2 楼答案
试试这个:
你需要把hh改成hh
HH
格式用HOUR(0-23)
表示时间,而h h用1-12 am/pm
格式表示时间同时检查Oracle docs以供参考